/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package logistica.beans;

import entities.Almacen;
import entities.TipoLocalizacionAlmacen;
import facades.TipoLocalizacionAlmacenFacade;
import java.io.Serializable;
import java.util.ArrayList;
import javax.enterprise.context.SessionScoped;
import javax.enterprise.event.Observes;
import javax.inject.Inject;
import javax.inject.Named;
import qualifiers.EventoEntidadElegida;

/**
 *
 * @author damfercer
 */
@Named
@SessionScoped
public class LocalizacionesAlmacenBean implements Serializable{
    private Almacen almacen;
    @Inject
    private TipoLocalizacionAlmacenFacade tipoLocalizacionAlmacenFacade;
    private TipoLocalizacionAlmacen tipoLocalizacionAlmacenCollector;

    /**
     * Creates a new instance of NuevoProductoBean
     */

    /**
     * @return the nuevoProducto
     */
    public Almacen getAlmacen() {
        return almacen;
    }

    /**
     * @param nuevoProducto the nuevoProducto to set
     */
    public void setAlmacen(Almacen almacen) {
        this.almacen = almacen;
    }
    
    public void onAlmacenElegido(@Observes @EventoEntidadElegida Almacen almacen){
        this.almacen=almacen;
        this.tipoLocalizacionAlmacenCollector=new TipoLocalizacionAlmacen();
    }

    /**
     * @return the almacenTiendaCollector
     */
    public TipoLocalizacionAlmacen getTipoLocalizacionAlmacenCollector() {
        return tipoLocalizacionAlmacenCollector;
    }

    /**
     * @param almacenTiendaCollector the almacenTiendaCollector to set
     */
    public void setTipoLocalizacionAlmacenCollector(TipoLocalizacionAlmacen tipoLocalizacionAlmacenCollector) {
        this.tipoLocalizacionAlmacenCollector = tipoLocalizacionAlmacenCollector;
    }
    
    public void addTipoLocalizacion(){
        this.tipoLocalizacionAlmacenCollector.setAlmacen(almacen);
        tipoLocalizacionAlmacenFacade.create(tipoLocalizacionAlmacenCollector);
        if(this.almacen.getTipoLocalizacionAlmacenList()==null){
            this.almacen.setTipoLocalizacionAlmacenList(new ArrayList<TipoLocalizacionAlmacen>());
        }
        this.almacen.getTipoLocalizacionAlmacenList().add(tipoLocalizacionAlmacenCollector);
        this.tipoLocalizacionAlmacenCollector=new TipoLocalizacionAlmacen();
    }
    
    public void removeTipoLocalizacionAlmacen(TipoLocalizacionAlmacen tipoLocalizacion){
        this.almacen.getTipoLocalizacionAlmacenList().remove(tipoLocalizacion);
        tipoLocalizacionAlmacenFacade.remove(tipoLocalizacion);
    }
    
}
